package cool.tsy.emos.wx.db.dao;

import cool.tsy.emos.wx.db.pojo.TbMeeting;
import org.apache.ibatis.annotations.Mapper;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

/**
 * <p>
 * 会议表 Mapper 接口
 * </p>
 *
 * @author WangHongxuan
 * @since 2021-09-24
 */
@Mapper
public interface TbMeetingDao {

    /**
     * <h2>生成会议<h2/>
     */
    int insertMeeting(TbMeeting meeting);

    /**
     * <h2>分页查询会议</h2>
     */
    ArrayList<HashMap> searchMyMeetingListByPage(HashMap param);

    /**
     * <h2>判断参会人是否是同部门</h2>
     */
    boolean searchMeetingMembersInSameDept(String uuid);

    /**
     * <h2>记录工作流实例 ID</h2>
     */
    int updateMeetingInstanceId(HashMap map);

    /**
     * <h2>查询会议信息</h2>
     */
    HashMap searchMeetingById(int id);

    /**
     * <h2>查询会议参会人</h2>
     */
    ArrayList<HashMap> searchMeetingMembers(int id);

    /**
     * <h2>更新会议信息</h2>
     */
    int updateMeetingInfo(HashMap param);

    /**
     * <h2>删除会议记录</h2>
     */
    int deleteMeetingById(int id);

    /**
     * <h2>查询某月用户的会议日期列表</h2>
     */
    List<String> searchUserMeetingInMonth(HashMap param);
}
